/**
 * @projectName 简陋的工作台
 * @package com.wzl.workbench.service
 * @className com.wzl.workbench.service.WorkService
 * @copyright Copyright 2021 Thunisoft, Inc. All rights reserved.
 */
package com.wzl.workbench.service;

import java.util.List;

import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.thunisoft.artery.util.uuid.UUIDHelper;
import com.wzl.workbench.mapper.WorkMapper;
import com.wzl.workbench.model.Work;

/**
 * 文章表service接口实现类
 * 
 * @description 文章表service接口实现
 * @author weizhilin
 * @date 2021年04月21日 15:00:31
 * @version 1.0.0
 */
@Service
public class WorkService{

    /**
     * workMapper
     */
    @Autowired
    private WorkMapper workMapper;

    /**
     * WorkService
     * 
     * @description 插入一条文章表数据
     * @param work 文章表
     * @return 影响行数
     * @author weizhilin
     * @date 2021年04月21日 15:00:31
     * @version 1.0.0
     */
    public int insert(Work work) {
        if (StringUtils.isBlank(work.getBh())) {
            work.setBh(UUIDHelper.getUuid());
        }
        return workMapper.insert(work);
    }

    /**
     * WorkService
     * 
     * @description 通过主键删除文章表数据
     * @param cbh 主键编号
     * @return 影响行数
     * @author weizhilin
     * @date 2021年04月21日 15:00:31
     * @version 1.0.0
     */
    public int delete(String cbh) {
        return workMapper.deleteByPrimaryKey(cbh);
    }

    /**
     * WorkService
     * 
     * @description 通过主键修改Work数据
     * @param work 更新实体
     * @return 影响行数
     * @author weizhilin
     * @date 2021年04月21日 15:00:31
     * @version 1.0.0
     */
    public int update(Work work) {
        //updateByPrimaryKeySelective：为null的字段不会受影响
        //updateByPrimaryKey：字段为null时，会将数据库对应字段置空
        return workMapper.updateByPrimaryKeySelective(work);
    }

    /**
     * WorkService
     * 
     * @description 通过条件查询多条数据
     * @param args 参数
     * @return List<Work>
     * @author weizhilin
     * @date 2021年04月21日 15:00:31
     * @version 1.0.0
     */
    public List<Work> select(Work args) {
        return workMapper.select(args);
    }

    /**
     * WorkService
     * 
     * @description 通过主键查询文章表信息
     * @param cbh 主键编号
     * @return Work
     * @author weizhilin
     * @date 2021年04月21日 15:00:31
     * @version 1.0.0
     */
    public Work selectOne(String cbh) {
        return workMapper.selectByPrimaryKey(cbh);
    }
}